package com.fjnu.entities;

import java.util.HashSet;
import java.util.Set;

import com.fasterxml.jackson.annotation.JsonBackReference;
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonManagedReference;
import com.fasterxml.jackson.annotation.ObjectIdGenerators;

/**
 * Unit entity. @author MyEclipse Persistence Tools
 */
@JsonIgnoreProperties(value={"hibernateLazyInitializer","handler","fieldHandler"})
@JsonIdentityInfo(
        generator = ObjectIdGenerators.PropertyGenerator.class,
        property = "id",
        scope = Unit.class)
public class Unit implements java.io.Serializable {

	// Fields

	private Integer id;
	private String unitIdentifier;
	private String unitName;
	private String unitShortName;
	private String unitShortCode;
	private String establishYear;
	private String unitNature;
	private String useDirectionValue;
	private String fundsSubjectValue;
	private String unitMark;
	private String examine;
	private String schoolArea;
	private Set changeInstruments = new HashSet(0);
	private Set enclosureInstruments = new HashSet(0);
	private Set mainInstruments = new HashSet(0);
	private Set expensiveInstrumentYearuses = new HashSet(0);
	private Set<User> users;

	// Constructors

	/** default constructor */
	public Unit() {
	}

	/** minimal constructor */
	public Unit(Integer id) {
		this.id = id;
	}

	/** full constructor */
	public Unit(Integer id, String unitIdentifier, String unitName,
			String unitShortName, String unitShortCode, String establishYear,
			String unitNature, String useDirectionValue,
			String fundsSubjectValue, String unitMark, String examine,
			String schoolArea, Set changeInstruments, Set enclosureInstruments,
			Set mainInstruments, Set expensiveInstrumentYearuses,Set users) {
		this.id = id;
		this.unitIdentifier = unitIdentifier;
		this.unitName = unitName;
		this.unitShortName = unitShortName;
		this.unitShortCode = unitShortCode;
		this.establishYear = establishYear;
		this.unitNature = unitNature;
		this.useDirectionValue = useDirectionValue;
		this.fundsSubjectValue = fundsSubjectValue;
		this.unitMark = unitMark;
		this.examine = examine;
		this.schoolArea = schoolArea;
		this.changeInstruments = changeInstruments;
		this.enclosureInstruments = enclosureInstruments;
		this.mainInstruments = mainInstruments;
		this.expensiveInstrumentYearuses = expensiveInstrumentYearuses;
		this.users=users;
	}

	// Property accessors

	public Integer getId() {
		return this.id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getUnitIdentifier() {
		return this.unitIdentifier;
	}

	public void setUnitIdentifier(String unitIdentifier) {
		this.unitIdentifier = unitIdentifier;
	}

	public String getUnitName() {
		return this.unitName;
	}

	public void setUnitName(String unitName) {
		this.unitName = unitName;
	}

	public String getUnitShortName() {
		return this.unitShortName;
	}

	public void setUnitShortName(String unitShortName) {
		this.unitShortName = unitShortName;
	}

	public String getUnitShortCode() {
		return this.unitShortCode;
	}

	public void setUnitShortCode(String unitShortCode) {
		this.unitShortCode = unitShortCode;
	}

	public String getEstablishYear() {
		return this.establishYear;
	}

	public void setEstablishYear(String establishYear) {
		this.establishYear = establishYear;
	}

	public String getUnitNature() {
		return this.unitNature;
	}

	public void setUnitNature(String unitNature) {
		this.unitNature = unitNature;
	}

	public String getUseDirectionValue() {
		return this.useDirectionValue;
	}

	public void setUseDirectionValue(String useDirectionValue) {
		this.useDirectionValue = useDirectionValue;
	}

	public String getFundsSubjectValue() {
		return this.fundsSubjectValue;
	}

	public void setFundsSubjectValue(String fundsSubjectValue) {
		this.fundsSubjectValue = fundsSubjectValue;
	}

	public String getUnitMark() {
		return this.unitMark;
	}

	public void setUnitMark(String unitMark) {
		this.unitMark = unitMark;
	}

	public String getExamine() {
		return this.examine;
	}

	public void setExamine(String examine) {
		this.examine = examine;
	}

	public String getSchoolArea() {
		return this.schoolArea;
	}

	public void setSchoolArea(String schoolArea) {
		this.schoolArea = schoolArea;
	}

	public Set getChangeInstruments() {
		return this.changeInstruments;
	}

	public void setChangeInstruments(Set changeInstruments) {
		this.changeInstruments = changeInstruments;
	}

	public Set getEnclosureInstruments() {
		return this.enclosureInstruments;
	}

	public void setEnclosureInstruments(Set enclosureInstruments) {
		this.enclosureInstruments = enclosureInstruments;
	}
	public Set getMainInstruments() {
		return this.mainInstruments;
	}
	public void setMainInstruments(Set mainInstruments) {
		this.mainInstruments = mainInstruments;
	}

	public Set getExpensiveInstrumentYearuses() {
		return this.expensiveInstrumentYearuses;
	}

	public void setExpensiveInstrumentYearuses(Set expensiveInstrumentYearuses) {
		this.expensiveInstrumentYearuses = expensiveInstrumentYearuses;
	}

	public Set<User> getUsers() {
		return users;
	}

	public void setUsers(Set<User> users) {
		this.users = users;
	}

}